import React from "react";

import CharacterCounter from "./features/counter/CharacterCounter";
import TodoList from "./features/todo/TodoList";

import ErrorBoundary from "./features/user/ErrorBoundary";
import CurrentUserInfo from "./features/user/CurrentUserInfo";
import CurrentUserInfoLoadable from "./features/user/CurrentUserInfoLoadable";
import EffectSetDemo from "./features/effects/EffectSetDemo";

import "./App.css";

function App() {
  return (
    <div>
      <EffectSetDemo />
      <CharacterCounter />
      <TodoList />
      <ErrorBoundary>
        <React.Suspense fallback={<div>Loading...</div>}>
          <CurrentUserInfo />
        </React.Suspense>
      </ErrorBoundary>
      <CurrentUserInfoLoadable />
    </div>
  );
}

export default App;
